package com.literaryfamily.literaryfamily.service.user.msg;

import com.literaryfamily.literaryfamily.model.ReturnResult;
import com.literaryfamily.literaryfamily.myUtil.PageUtil;
import com.literaryfamily.literaryfamily.vo.UserListMsg;

import java.util.List;

/**
 * 用户信息接口
 * 所有涉及读写的方法都需要抛出 WriteError 数据库读写错误异常(这个是运行时异常,只需要抛出不需要处理)
 * 此接口所有方法均不检查用户身份,应该验证身份后在进行检查
 *
 * @author 滑稽/因果报应
 */
public interface UserListMsgService {


    /**
     * 获取某个用户的列表信息
     *
     * @param userId 获取的ID
     * @return 完整的列表信息(仅包含头像, 用户名, 用户ID)
     */
    UserListMsg getUserListMxg(Long userId);

    /**
     * 批量获取用户列表信息
     *
     * @param pageMsg 分页信息,为空时代表不进行分页,获取所有记录
     */
    List<UserListMsg> getUserListMxg(List<Long> userIdList, PageUtil pageMsg);


    /**
     * 获取用户列表信息
     *
     * @param page 页数
     * @param size 每页显示数量
     * @return 对应的列表信息
     */
    ReturnResult<UserListMsg> getUserListMxg(int page, int size);

}